Disk drives conventionally partition disk surfaces into logical zones for optimizing storage capacity by varying bit density within each of the logical zones. The zones may be visualized as concentric bands of tracks with a varying progression of bit density from band to band. Each zone stores a range of user data blocks which are addressed by a host computer using a logical block address (LBA). The disk drive comprises an intelligent control system which translates the host specified LBA into an internal address. As is known in the art, the internal address may result from a translation process that translates the LBA into an internal absolute block address (ABA) that is eventually translated into a physical sector address and track address.
The disk drive control system may maintain a set of zone tables where each table provides information about the zone including for example an address of the first user data block in the zone. Other parameters in the zone table enable the control system to determine in which zone a given user data block resides by searching the zone tables to locate the sector corresponding to the block address.
In most cases, the disk drive control system can accomplish this table search without compromising performance because the zone tables are stored in memory when the drive is initialized for operation and only one set of tables is required because each disk surface has an identical format. The highly competitive disk drive market has more recently driven initiatives to minimize cost by allowing for variations in surface format such that multiple sets of zone tables may be required. Detrimentally, this could require increased memory for storing the tables and increased processor execution overhead to perform searches of the expanded tables.
Accordingly, what is needed is a method for determining in which zone in a disk a given user data block resides, while reducing processor execution overhead.